package com.cn.xiaonuo.tcrfinance.tcrshops.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;


/**
 * @author likui
 * @Date 2022/3/1
 * @Description 退款订单表
 */
@Data
@TableName("pv_order_refund")
public class PvOrderRefund {

    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 订单号
     */
    @ApiModelProperty(value = "订单号", example = "")
    private Integer orderId;

    /**
     * 订单编号
     */
    @ApiModelProperty(value = "订单编号", example = "")
    private String serialNumber;

    /**
     * 退款申请编号
     */
    @ApiModelProperty(value = "退款申请编号", example = "")
    private String refundNum;

    /**
     * 退款人联系号码
     */
    @ApiModelProperty(value = "退款人联系号码", example = "")
    private String phone;

    /**
     * 退款人id
     */
    @ApiModelProperty(value = "退款人id", example = "")
    private Integer userId;

    /**
     * 退款人姓名
     */
    @ApiModelProperty(value = "退款人姓名", example = "")
    private String userName;

    /**
     * 退款人地址
     */
    @ApiModelProperty(value = "退款人地址", example = "")
    private String userAddress;

    /**
     * 退款原因id
     */
    @ApiModelProperty(value = "退款原因id", example = "")
    private Integer refundReasonId;

    /**
     * 客户退款原因
     */
    @ApiModelProperty(value = "客户退款原因", example = "")
    private String reason;

    /**
     * 退款详细说明
     */
    @ApiModelProperty(value = "退款详细说明", example = "")
    private String reasonDetail;

    /**
     * 退款图片链接，多个以逗号隔开
     */
    @ApiModelProperty(value = "退款图片链接，多个以逗号隔开", example = "")
    private String refundImageUrl;

    /**
     * 退款创建时间
     */
    @ApiModelProperty(value = "退款创建时间", example = "")
    private String createTime;

    /**
     * 1.待审核 2.待退款 3.退款成功/退款成功 4.退款未通过/已驳回 5：取消退款 6.退款异常
     */
    @ApiModelProperty(value = "1.待审核 2.待退款 3.退款成功/退款成功 4.退款未通过/已驳回 5：取消退款 6.退款异常", example = "")
    private Integer checkState;

    /**
     * 审核时间
     */
    @ApiModelProperty(value = "审核时间", example = "")
    private String checkTime;

    /**
     * 操作人ID
     */
    @ApiModelProperty(value = "操作人ID", example = "")
    private Long operateId;

    /**
     * 操作人姓名
     */
    @ApiModelProperty(value = "操作人姓名", example = "")
    private String operateName;

    /**
     * 财务打款ID
     */
    @ApiModelProperty(value = "财务打款ID", example = "")
    private Long paymentId;

    /**
     * 财务打款人姓名
     */
    @ApiModelProperty(value = "财务打款人姓名", example = "")
    private String paymentName;

    /**
     * 财务打款时间/退款时间
     */
    @ApiModelProperty(value = "财务打款时间/退款时间", example = "")
    private String paymentTime;

    /**
     * 退款申请状态:0无效 1有效
     */
    @ApiModelProperty(value = "退款申请状态:0无效 1有效", example = "")
    private Integer orderRefundState;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注", example = "")
    private String remark;

    /**
     * 审核操作员：1：财务 2客服'
     */
    @ApiModelProperty(value = "审核操作员：1：财务 2客服  3用户", example = "")
    private Integer operateStatus;

    /**
     * 打款操作员：1：财务 2客服
     */
    @ApiModelProperty(value = "打款操作员：1：财务 2客服", example = "")
    private Integer paymentStatus;

    /**
     * 驳回原因
     */
    @ApiModelProperty(value = "驳回原因", example = "")
    private String refuseReason;

    /**
     * 商品ID
     */
    @ApiModelProperty(value = "商品ID", example = "")
    private Integer productId;

    /**
     * 商品名称
     */
    @ApiModelProperty(value = "商品名称", example = "")
    private String productName;

    /**
     * 单价
     */
    @ApiModelProperty(value = "单价", example = "")
    private BigDecimal unitPrice;

    /**
     * 商品数量
     */
    @ApiModelProperty(value = "商品数量", example = "")
    private Integer productNum;

    /**
     * 总金额
     */
    @ApiModelProperty(value = "总金额", example = "")
    private BigDecimal totalAmount;

    /**
     * 实际付款金额
     */
    @ApiModelProperty(value = "实际付款金额", example = "")
    private BigDecimal actualAmount;

    /**
     * 1微信,2支付宝,3.线下付款4.奖励提货5验证6.购买提货 20.余额支付
     */
    @ApiModelProperty(value = "1微信,2支付宝,3.线下付款4.奖励提货5验证6.购买提货 20.余额支付", example = "1微信,2支付宝,3.线下付款4.奖励提货5验证6.购买提货 20.余额支付")
    private Integer paymentChannel;

    /**
     * 商家ID
     */
    @ApiModelProperty(value = "商家ID", example = "")
    private Integer shopId;

    /**
     * 商家名称
     */
    @ApiModelProperty(value = "商家名称", example = "")
    private String shopName;

    /**
     * 操作方式：1：用户申请 2人工关闭'
     */
    @ApiModelProperty(value = "操作方式：1：用户申请 2人工关闭", example = "")
    private Integer operateMode;

    /**
     * 发货id
     */
    private Integer deliveryId;

    /**
     * 驳回原因id
     */
    private Integer refuseReasonId;

    /**
     * 商户订单号（第三方支付使用）
     */
    private String merchantOrderNo;

}
